from django import template
from friendship.models import Follow

register = template.Library()

@register.inclusion_tag('inclusion/friendship.html')
def which_friendship(request, obj):
    # obj是发布者的对象
    # friendship = 0
    # 0. 我未关注obj, obj也未关注我 -> 关注（可关注）
    # 1. 我关注的obj，但obj未关注我 -> 已关注（可取注关注）
    # 2. obj关注了我，但我未关注obj -> 回关（可关注）
    # 3. 我关注了obj, 且obj也关注了我 -> 互相关注（可取注关注）

    i_follow = Follow.objects.filter(user=request.universe.user, follow=obj).first()  # 我有没有关注该用户？
    fans_me = Follow.objects.filter(user=obj, follow=request.universe.user)  # 该用户有没有关注我？

    # 我没有关注obj
    if not i_follow:
        # 查看obj有没有关注我？
        if not fans_me:  # obj也没有关注我
            friendship = 0
            # url = reverse('follow', kwargs={'user_id': obj.id})
            return {'friendship': friendship, 'user_id': obj.id}

        # 用户关注我了
        friendship = 2
        # url = reverse('follow', kwargs={'user_id': obj.id})
        return {'friendship': friendship, 'user_id': obj.id}

    # 我关注了obj
    else:
        if not fans_me:
            friendship = 1
            # url = reverse('unfollow', kwargs={'user_id': obj.id})
            return {'friendship': friendship, 'user_id': obj.id}

        # 互相关注-好友关系
        friendship = 3
        # url = reverse('unfollow', kwargs={'user_id': obj.id})
        return {'friendship': friendship, 'user_id': obj.id}

def is_my_friend(request, obj):

    return True